package javaman.servlet;

import java.io.IOException;

import javaman.gestor.GestorCategoria;
import javaman.modelo.Categoria;
import javaman.modelo.ProfesorCategoria;
import javaman.modelo.Usuario;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class LoadRegistrarCategoriaServlet
 */
public class LoadRegistrarCategoriaServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
	GestorCategoria gestorCategoria = new GestorCategoria();   
    /**
     * @see HttpServlet#HttpServlet()
     */
    public LoadRegistrarCategoriaServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		System.out.println("Entro get");
		// TODO Auto-generated method stub
		Categoria[] categorias = gestorCategoria.listarCategorias();
		String destino = "/formularioCategoria.jsp";
		String accion = request.getParameter("accion");
		
		if(accion.equals("listar")) {
			request.setAttribute("arrListado",gestorCategoria.listarCategorias());
			destino = "/listadoCategoria.jsp";
		} else if(accion.equals("insertar")){
			request.setAttribute("arrCategorias",categorias);
		} else if(accion.equals("modificar")) {
		
			String idcategoria = request.getParameter("idcategoria");
			
			Categoria categoria = gestorCategoria.buscarCategoriasById(Integer.parseInt(idcategoria));
		
			if(categoria!=null) {
				request.setAttribute("idcategoria", idcategoria);
				request.setAttribute("nombre", categoria.getNombre());
				request.setAttribute("idpadre", categoria.getIdcategoriapadre());
				request.setAttribute("descripcion", categoria.getDescripcion());
				request.setAttribute("arrCategorias",categorias);
			}	
		} else if(accion.equals("eliminar")) {
			String idcategoria = request.getParameter("idcategoria");
			
			String resultado = gestorCategoria.eliminarCategoria(Integer.parseInt(idcategoria));
			request.setAttribute("arrListado",gestorCategoria.listarCategorias());
			if(!resultado.equals("OK")){
				request.setAttribute("resultado", resultado);
			}
			destino = "/listadoCategoria.jsp";
		}
		
		request.setAttribute("accion",accion);
		
		RequestDispatcher rd = request.getRequestDispatcher(destino);
		rd.forward(request, response);
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
	}

}
